package com.liuyanzhao.blog.entity.custom;

import java.util.List;

/**
 *  用于封装文章正文详细信息，包括文章内容信息，作者信息，分类和标签信息
 */
public class ArticleDetailVo {
	//文章相关信息
	private ArticleCustom articleCustom;
	
	//文章的作者相关信息
	private UserCustom userCustom;
	
	//文章的分类相关信息
	private List<CategoryCustom> categoryCustomList;
	
	//文章的标签相关信息
	private List<TagCustom> tagCustomList;
	
	//评论信息
	private List<CommentCustom> commentCustomList;

	public ArticleCustom getArticleCustom() {
		return articleCustom;
	}
	
	public void setArticleCustom(ArticleCustom articleCustom) {
		this.articleCustom = articleCustom;
	}
	
	public UserCustom getUserCustom() {
		return userCustom;
	}
	
	public void setUserCustom(UserCustom userCustom) {
		this.userCustom = userCustom;
	}
	
	public List<CategoryCustom> getCategoryCustomList() {
		return categoryCustomList;
	}
	
	public void setCategoryCustomList(List<CategoryCustom> categoryCustomList) {
		this.categoryCustomList = categoryCustomList;
	}
	
	public List<TagCustom> getTagCustomList() {
		return tagCustomList;
	}
	
	public void setTagCustomList(List<TagCustom> tagCustomList) {
		this.tagCustomList = tagCustomList;
	}
	
	public List<CommentCustom> getCommentCustomList() {
		return commentCustomList;
	}
	
	public void setCommentCustomList(List<CommentCustom> commentCustomList) {
		this.commentCustomList = commentCustomList;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((articleCustom == null) ? 0 : articleCustom.hashCode());
		result = prime * result + ((categoryCustomList == null) ? 0 : categoryCustomList.hashCode());
		result = prime * result + ((commentCustomList == null) ? 0 : commentCustomList.hashCode());
		result = prime * result + ((tagCustomList == null) ? 0 : tagCustomList.hashCode());
		result = prime * result + ((userCustom == null) ? 0 : userCustom.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		ArticleDetailVo other = (ArticleDetailVo) obj;
		if (articleCustom == null) {
			if (other.articleCustom != null)
				return false;
		} else if (!articleCustom.equals(other.articleCustom))
			return false;
		if (categoryCustomList == null) {
			if (other.categoryCustomList != null)
				return false;
		} else if (!categoryCustomList.equals(other.categoryCustomList))
			return false;
		if (commentCustomList == null) {
			if (other.commentCustomList != null)
				return false;
		} else if (!commentCustomList.equals(other.commentCustomList))
			return false;
		if (tagCustomList == null) {
			if (other.tagCustomList != null)
				return false;
		} else if (!tagCustomList.equals(other.tagCustomList))
			return false;
		if (userCustom == null) {
			if (other.userCustom != null)
				return false;
		} else if (!userCustom.equals(other.userCustom))
			return false;
		return true;
	}

	@Override
	public String toString() {
		return "ArticleDetailVo [articleCustom=" + articleCustom + ", userCustom=" + userCustom
				+ ", categoryCustomList=" + categoryCustomList + ", tagCustomList=" + tagCustomList
				+ ", commentCustomList=" + commentCustomList + "]";
	}
	
	
	
	
}
